import org.junit.Test;

public class Min {
    /**
     * 自己设计一个泛型的获取数组最小值的函数.并且这个方法只能接受Number的子类并且实现了Comparable接口。
     */
    public <T extends Number & Comparable<? super T>> T min(T[] values) {
        if (values == null || values.length == 0) return null;
        T min = values[0];
        for (int i = 1; i < values.length; i++) {
            if (min.compareTo(values[i]) > 0){
                min = values[i];
            }
        }
        return min;
    }
    @Test
    public  void test(){
        Integer[] integers = {6,5,4,7,3,6,8,3,2};
        System.out.println(min(integers));
    }
}
